1. Field of the Invention
The invention relates to color printing, and more specifically, to converting an input file defined in terms of a three dimensional color space to a color space that is consistent with a printer's capability.
2. Related Art
A color image is displayed on a monitor in terms of Red, Green and Blue (RGB). A color image is scanned in terms of RGB. The color image is printed on a printer using Cyan, Magenta, Yellow and Black (CMYK) inks.
For additive color processes, such as those used in display monitors, red, green, and blue are primary colors. In theory, mixing red, green, and blue light in various combinations can produce any color. For example, cyan is a mixture of green and blue and magenta is a mixture of red and blue. Black is the absence of any red, green, or blue; while white contains all three. A display monitor involves an additive process of light, and therefore, any color it produces can be defined in terms of Red (R), Green (G) and Blue (B).
In a printing process, inks are typically deposited on white paper which already reflects the full amount of red, green, and blue. Instead of adding red, green and blue (RGB) together to produce any color, quantities of red, green, and blue are removed to produce a desired color. To do this, filters or inks have to be produced which filter individual primary colors, while not affecting the other two. The filter colors which accomplish this are the colors which are the complement of the primary colors. For example, yellow is the complement of blue. A blue filter, one which filters out blue light, passes red and green and thus appears yellow. Yellow ink can be thought of as an ink which removes blue. Thus, the complement of blue is yellow; the complement of red is cyan; and the complement of green is magenta. As such, cyan, magenta, and yellow are the primary colors in the subtractive color system and are known as the process colors in the printing industry.
Theoretically, with only three colors of ink: cyan (C), magenta(M) and yellow (Y), a printer could print any color. White can be obtained by putting no ink on the paper; and black can be obtained by putting cyan, magenta, and yellow on the paper, blocking all light. Realistically, however, the color obtained when placing cyan, magenta, and yellow on paper may not be pure black. It may be brownish. Consequently, black ink is typically added to the printing process color set. The black ink not only insures a richer black color, but it also reduces the amount of ink that has to be used to produce most colors. For example, if at any one place on the paper, quantities of C, M, and Y are placed, there will be a gray component which can be removed and replaced with black. This reduces the total amount of ink on the paper and produces better grays and blacks. In addition, it increases the gamut of the color set.
As shown above, color can be expressed in several ways. A color can be expressed in terms of percents of RGB (red, green, blue), CMY, (cyan, magenta, yellow) or CMYK (cyan, magenta, yellow, black). None of these color spaces, as they are called, are defined as to what color is produced by mixing combinations of each. Generally, these color spaces are referred to as being device dependent, since the color produced by a given CMYK mix on one printer will not produce the same color on another.
An attempt has been made in the United States to standardize the process color inks so that the colors can be predicted. A standard called SWOP (Specification for Web Offset Publication) has been published which standardized the process ink colors. Recently, the standard has been taken a step further and 928 combinations of CMYK have been defined as to what color will result in a device independent color space (CIE XYZ or CIE L*a*b*). In Europe, a standard called Euroscale has been developed for four different paper surfaces. SWOP and Euroscale are very close, but not exactly the same.
In 1931, the organization called the Commission Internationale L'Eclairge (International Commission of Lighting), the CIE, met to try to establish a system of device independent color, color based on human sight. While attempting to define RGB, problems arose which persuaded the members to process the data through a matrix transform which produced a color space called CIE XYZ or XYZ. Since the XYZ color space is based on the human perception of color, any two different colors, even though the spectrum of these two colors may be different, will be perceived as the same color by a human if the XYZ values are the same under given lighting conditions.
From the XYZ color space, additional color spaces have been derived. One of these is called CIE L*a*b*, pronounced C Lab, or L*a*b*. This color space is based on XYZ of the color referenced to XYZ of the light source or paper. Most specifications such as the SWOP standard are specified in terms of XYZ and L*a*b* under a light source such as daylight D50. It is a three component color space with each color specified in terms of L*, a*, and b*. L* specifies the lightness; and the hue and saturation are determined from the values of a* and b*.
As previously discussed, a display monitor involves an additive process of light, and therefore, any color it produces can be defined in terms of RGB. However, a printing process is a subtractive process since it is printing on white paper, and therefore, color printers use cyan (C), magenta (M), and yellow (Y) or cyan, magenta, yellow and black (K), i.e., CMY or CMYK, to produce various colors. There has been an emphasis placed on the ability to accurately display an image on a monitor as well as the ability to accurately print an image on a printer. The internet and electronic mail have provided a level of interconnectivity that has driven the necessity of device independent color spaces. Uniform monitor display and uniform printer output ensure that individuals using different machines are seeing the same image. As a result of much research and development, most computer systems in the home and office now have the ability to incorporate these device independent color spaces into the monitor and the printer. The software controlling the printer relates the RGB values displayed to the CMYK values printed in accordance with the standardized colors.
Scanner technology continues to improve and become more affordable. As a result, all-in-one (AIO) devices (a combination printer, scanner and facsimile machine) have been increasingly used in homes and offices. Stand alone scanners can also be easily added to existing systems. The input to the printer may come from a personal computer (PC) or the scanner. A scanner measures the RGB of an image. In the copy mode (scanned image subsequently printed by printer), a multi-step process is required. First, the image is scanned in terms of RGB. Next, these RGB values are converted into device independent color values (i.e. CIE L*a*b). Several United States Patents utilize this device independent approach. Finally, the corresponding CMYK values are computed and printed. This is very similar to the monitor/display process and requires resource allocation sufficient to handle the process. U.S. Pat. No. 4,500,919 discloses a method of color reproduction on a monitor display. The device independent color space calculations allow the scanner to be used with different printers in different systems. U.S. Pat. Nos. 6,137,594; 6,072,901; 6,297,826 and 5,483,360 all utilize device independent color spaces to calibrate the printer.
In the case of an AIO device or a standalone scanner not intended to be removed from the printer, the above method is unnecessary. The device independent color space calculations duplicate the process already provided for in the relationship between the monitor and the printer to provide standardized colors. Resources must be allocated to create the scanner to printer relationship in the form of software running on the CPU or imbedded in firmware associated with the scanner. U.S. Pat. No. 5,339,176 discloses a method of color calibration that is device dependent. The '176 patent discloses a method of calibrating a scanner by directly creating a lookup table between a scanner point and a printer point. The calibration then changes the manner in which the scanner functions (column 16, lines 52–55). As a result, a new value will be assigned to a previous point. For example prior to calibration, a point may have a red value of 10 measured by the scanner. After the calibration the same point may have a red value of 11 measured by the scanner. This method requires the scanner program to be changed. The present invention achieves the same result without changing the function of the scanner.